package com.ea.service;

import com.ea.domain.dto.StoreEvaluateDTO;
import com.ea.domain.query.EvaluateQueryDTO;
import com.ea.domain.vo.OrderDetailVO;
import com.ea.domain.vo.StoreEvaluateVO;
import com.github.pagehelper.PageInfo;

import java.util.List;

/**
 * @author NAME-L
 * @Description TODO
 * @className IStoreEvaluateInfoService
 * @date 2023-01-13 00:08:56
 */
public interface IStoreEvaluateInfoService {

    /**
     * 查看评价列表
     * @param queryDTO
     * @return
     */
    PageInfo<StoreEvaluateVO> getEvaluateList(EvaluateQueryDTO queryDTO);

    /**
     * 查询货品的评价信息
     * @param goodsId goodsId
     * @return list
     */
    List<StoreEvaluateVO> listEvaluateByGoodsId(Long goodsId);

    /**
     * 根据订单查询可以评价的货品信息
     * @param orderId orderId
     * @return list
     */
    List<OrderDetailVO> listCanEvaluateGoods(Long orderId);

    /**
     * 评价订单内的货品信息
     * @param evaluateDTO
     */
    void evaluateGoodsBySkuId(StoreEvaluateDTO evaluateDTO);

    /**
     * 删除评价
     * @param evaluateId
     */
    void deleteEvaluateInfo(Long evaluateId);
}
